/**
 *
 */
package com.zhuoyue.elmt.dao;

import com.eit.eitsite.common.persistence.CrudDao;
import com.eit.eitsite.common.persistence.annotation.MyBatisDao;
import com.zhuoyue.elmt.entity.DeviceParameters;
import com.zhuoyue.elmt.entity.Ecemp;

import java.util.HashMap;
import java.util.List;

/**
 * 电梯参数查询DAO接口
 * @author chenhao
 * @version 2016-09-07
 */
@MyBatisDao
public interface DeviceParametersDao extends CrudDao<DeviceParameters> {
    public DeviceParameters getDeviceInfoByDeviceCode(DeviceParameters deviceParameters);

    public List<DeviceParameters> getDeviceInfoByDeviceCodeLike(DeviceParameters deviceParameters);

    public HashMap statByDeviceStatus(HashMap param);
    public List<HashMap> statByDeviceArea(HashMap param);

    public List<DeviceParameters> xtpqsblist(DeviceParameters qryMap);

    public List<DeviceParameters> xtpqsbnolist(HashMap qryMap);

    public List<DeviceParameters> findStaffMainList(DeviceParameters qryDeviceParameters);

    public String getDeviceEffContractId(String sbzcdm);

    //电梯无有效维保合同情况统计
    public List<HashMap> statByNoMaintenanceContract(HashMap param);
    //所有在用电梯统计(首页统计)
    public Integer statByNoMaintenance(String zzjgdm);
    //电梯有效维保合同情况统计(首页统计)
    public Integer statByNoMaintenance2(String zzjgdm);
    //电梯有指定维保人员情况统计(首页统计)
    public Integer statByNoMaintenance3(String zzjgdm);
    //电梯有指定维保人员情况统计(首页统计)
    public List<Ecemp> statByNoMaintenance4(String zzjgdm);
    //电梯故障情况统计(首页统计)
    public List<Ecemp> statByNoMaintenance5(String zzjgdm);
    //电梯困人情况统计(首页统计)
    public List<Ecemp> statByNoMaintenance6(String zzjgdm);
    //电梯维保逾期情况统计(首页统计)
    public Ecemp statByNoMaintenance7(String zzjgdm);
    //电梯运行状态情况统计(首页统计)
    public Ecemp statByNoMaintenance8(String zzjgdm);
    //电梯维保不合格率统计(首页统计)
    public Ecemp statByNoMaintenance9(String zzjgdm);
    //电梯维保签到异常情况统计(首页统计)
    public List<Ecemp> statByNoMaintenance10(String zzjgdm);

    //电梯人员被困救援时间情况统计(首页统计)
    public List<Ecemp> statByNoMaintenance11(String zzjgdm);
    //电梯无指定维保人员情况统计
    public List<HashMap> statByNoMaintenanceStaff(HashMap param);
    //电梯维保人员超额维保情况统计
    public List<HashMap> statByExcessMaintenance(HashMap param);
    //电梯维保签到异常情况统计
    public List<HashMap> statBySignException(HashMap param);

    //电梯维保逾期情况统计
    public List<HashMap> statByMaintenanceOverdue(HashMap param);
    //电梯维保不合格情况统计
    public List<HashMap> statByNoPassMaintenanceRecord(HashMap param);
    //电梯维保项目不合同情况统计
    public List<HashMap> statByNoPassMaintenanceItem(HashMap param);

    //电梯故障报告情况统计
    public List<HashMap> statByFailureReport(HashMap param);
    //电梯困人情况统计
    public List<HashMap> statByTrappedPeople (HashMap param);

    // 按日期显示每天维保电梯数，显示15天(首页统计)
    public List<HashMap> statEveryDayMainDevice(HashMap param);

    // 按日期显示各个维保小组的维保数量
    public List<HashMap> statEveryDayMainDeviceGroup(HashMap param);

    // 按日期显示各个维保小组的维保设备
    public List<DeviceParameters> statEveryDayMainDeviceGroupList(HashMap param);

//    //查询维保单位未分配维保人员的设备
//    public List<DeviceParameters> getByMaintenanceUnitCode(String wbdwdm);
}